package com.deco.logic.brand;

import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.deco.dao.delegate.brand.IActivityReportDao;
import com.deco.domain.vo.brand.ActivityReportVo;
import com.free.common.vo.PageResponseVo;
import com.free.common.vo.PageSearchVo;
import com.free.common.vo.ResultModel;

import java.util.List;

/**
 * <p>
 * 功能概述:
 * </p>
 * <p>
 * 功能详述:
 * </p>
 */
@Component
public class ActivityReportLogic {
	/*========================================================================*
	 *                         Public Fields (公共属性)
	 *========================================================================*/

	/*========================================================================*
	 *                         Private Fields (私有属性)
	 *========================================================================*/

	@Autowired
	IActivityReportDao activityReportDao;

	/*========================================================================*
	 *                         Construct Methods (构造方法)
	 *========================================================================*/

	/*========================================================================*
	 *                         Public Methods (公有方法)
	 *========================================================================*/

	public ActivityReportVo getActivityReport(long id) {
		ActivityReportVo activityReport = new ActivityReportVo();
		activityReport.setId(id);
		return activityReportDao.selectOne(activityReport);
	}

	public void update(ActivityReportVo activityReportVo) {
		activityReportDao.update(activityReportVo);
	}

	public void create(ActivityReportVo activityReportVo) {
		activityReportDao.add(activityReportVo);
	}

	public void delete(Long id) {
		activityReportDao.delete(id);
	}

	public PageResponseVo<ActivityReportVo> getPageInfo(
			PageSearchVo<ActivityReportVo> condition) {
		return activityReportDao.selectByPageNoTitleLike(condition.getConditionVo(), " create_time desc ", condition.getCurrentNo(), condition.getLength());
		//return activityReportDao.selectByPageNo(condition.getConditionVo(), StringUtils.EMPTY, condition.getCurrentNo(), condition.getLength());
	}

	public int batchDelete(String[] idArray) {
		// TODO Auto-generated method stub
		return activityReportDao.batchDelete(idArray);
	}

	public List<String> getActivityReportYears() {
		return activityReportDao.selectYearList();
	}

	public List<ActivityReportVo> getYearReports(String year) {
		return activityReportDao.selectActivityReportByYear(year);
	}
    /*========================================================================*
     *                         Private Methods (私有方法)
     *========================================================================*/
}
